package com.ruoyi.classai.service;

import com.alibaba.fastjson2.JSONObject;
import com.github.yulichang.base.MPJBaseService;
import com.ruoyi.classai.domain.EwcStudent;
import com.ruoyi.classai.domain.dto.EwcStudentDto;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.NotBlank;
import java.util.List;

/**
 * 学生信息Service接口
 * 
 * @author lcj
 * @date 2025-02-27
 */
public interface IEwcStudentService extends MPJBaseService<EwcStudent> {

    /**
     * 添加学生信息
     * @param student 学生信息
     */
    void add(EwcStudentDto student);

    /**
     * 编辑学生信息
     * @param student 学生信息
     */
    void edit(EwcStudentDto student);

    /**
     * 删除学生信息
     * @param studentId 学生id
     * @param classId 班级id
     */
    void deleteStudent( String studentId,String classId);

    /**
     * 查询学生列表
     * @param studentName 学生名称
     * @param classId 班级id
     * @return 学生列表
     */
    List<EwcStudentDto> getList(String studentName,String classId);

    /**
     * 导入学生信息
     * @param file 文件信息
     * @param classId 课程id
     * @return 导入消息
     */
    JSONObject importStudent(MultipartFile file, String classId);

    /**
     * 根据性别查询班级学生人数
     * @param classId 班级id
     * @return 人数
     */
    int getStudentNumberBySex(String classId,String sex);
}
